iT邦幫忙

2025 iThome 鐵人賽

DAY 4
0
生成式 AI

可愛又迷人的提示詞工程 Prompt Engineering系列 第 4

Day4. 提供少量範例 Few-shot 來引導模型的技巧

  • 分享至 

  • xImage
  •  

前面我們討論了提示詞的三大基本要素:角色、任務與格式,他們能幫助 AI 了解我是誰、我要做什麼、我該怎麼輸出。然而有時候你會發現,即使指令清晰,AI 的回應依然有可能不符合預期或表現普普。

這時候,我們可以考慮加入一個更進階的技巧:少量的範例提示詞,也就是 Few-shot Prompt

Few-shot 的核心概念非常直覺:與其長篇大論的告訴 AI 規則,不如直接做給它看。我們可以提供少量但精準的範例,引導 AI 學習我們期望的格式、風格與邏輯,讓它從模仿進化到舉一反三。

Few-shot Prompt 介紹

Few-shot Prompt 是指在指令中提供少量 (約 2 ~5 個 ) 的輸入 / 輸出範例,讓 AI 在執行新任務前可以學習模仿,進而產生風格與結構一致的輸出內容。這個概念來自於機器學習的少量樣本學習 (Few-shot Learning),表示模型可以從少量的樣本中快速掌握任務規則。

他的基本結構為「任務說明 + 範例 1 + 範例 2 + ... + 新的任務指令」

以下是 Zero-shot (沒有範例) 和 Few-shot (少量範例) 的生成比對,同樣用 Gemini 2.5 pro 模型為例:

https://ithelp.ithome.com.tw/upload/images/20250917/20120631OJbmcWjVlM.png

你可能會感受到 zero-shot 的版本比較生硬一點,而 few-shot 因為有提供少量範例,所以會理解到這個任務並非只要輸出條列式內容,而是要多創造出有情境的內容。

Few-shot 提示詞有效的原因

Few-shot 提示詞的原理,是利用大型語言模型最擅長的辨識和模仿能力,將範例餵給 AI 作為標準答案,從根本上解決指令模糊性的問題。

https://ithelp.ithome.com.tw/upload/images/20250917/201206318SOBY5SBpv.png

透過 Few-shot 範例, Ai 可以從中學到四件事情:

  1. 輸出的格式:AI 可以直接了解我們期望的架構和格式
  2. 語氣口吻:AI 可以拆解範例的語氣並學習模仿
  3. 邏輯規律:他會學習輸出和輸入的對應關係,例如:將數據資料轉成一份商業洞察報告
  4. 大方向:這些範例可以替 AI 的創意提供一個基準線與發想的方向

設計高品質的範例

AI 會將範例拆解學習,所以我們要提供好的範例給 AI,不然可能對 AI 沒有幫助,甚至會誤導你的輸出結果。

這篇文章著重介紹 Few-shot (少量範例),也就是說,我會建議大家不要給 AI 太多的範例,因為提供 2 ~ 3 個精準的、好的範例,勝過提供 10 個普通的、不好的範例。

所以我們要做的第一件事情,就是確保提供給 AI 的範例是我們心中最棒的前三名。

再來,範例應該要多樣化,避免太過單一限制 AI 的發想,例如你提供了兩個範例:

  • 範例 1:快速
  • 範例 2:迅速

這兩個範例其實殊途同歸,因為「快速」和「迅速」都是在講同一件事情,所以嚴格來說只能算是一個範例。

我們再看看另外一個例子,這次我提供了三個範例:

  • 範例 1:快速
  • 範例 2:安全
  • 範例 3:簡單

三個範例給出了三件事情:快速、安全、簡單,這對 AI 就是有效範例,因為他可以同時學習到這三件事情,並進行延伸創作。

我們提供的範例格式和邏輯也盡量要保持一致,第一個範例如果用條列式,第二個範例就盡量沿用條列式,不要突然變成段落 (除非你另有用途),不然可能會讓 AI 感到困惑,不知道要參照哪一種輸出格式。

最後,範例可長可短,但理想的情況下,還是建議精簡化,只保留你想要讓 AI 學習的關鍵內容。

讓我們來整理一下前面提到的要點,要設計高品質的範例,總共有四個可以參考的步驟,條列如下:

  1. 重品質,而不是重數量
  2. 選有代表性跟多樣性的範例
  3. 保持格式和邏輯一致
  4. 無關的內容不要寫,只留最關鍵的內容

實際使用看看 Few-shot 提示詞

掌握 Few-shot 的技巧後,讓我們試著應用在不同的場景,看看輸出的品質有沒有提高吧!

內容創作

我們先試著請他模仿村上春樹的寫作風格,來描述一個武俠世界

請先模仿村上春樹的寫作風格,範例如下:

範例 1:「我在廚房煮義大利麵。水滾了,麵條下鍋的聲音像是時間的嘆息。我想起了三年前的那個雨天。」
範例 2:「貓咪在陽台上睡覺。午後的陽光透過玻璃,在牠毛茸茸的身體上畫出幾何圖案。這讓我想到了某本書裡的句子,但我想不起是哪一本。」

現在請描述:一個日常的武俠世界

我使用的模型是 Gemini 2.5 pro,以下是他的回應:

「我坐在茶館的角落擦拭著我的劍。店小二剛換上一壺新的粗茶,蒸氣像一縷沒有野心的魂魄,筆直地升起,然後消失。茶的味道很普通,帶著點塵土的氣息,喝起來像是某個被遺忘的午後。

我用一塊舊麻布,沿著劍刃緩慢地移動。劍身與布摩擦的聲音很乾燥,聽起來比蟬鳴還要寂寞。劍身上映照出我的臉,模糊得像水中的倒影。日復一日地練劍,運氣,我的右手拇指上長出了一層薄繭,觸感宛如一小片光滑的石頭。

這讓我想起師父曾說過的話。他說,上乘的劍客,能從風裡聽出敵人的呼吸。但我從風裡只聽見竹葉摩擦的聲音,那聲音讓我想起多年前在蜀中,某個客棧的女孩替我縫補衣裳的午後。她的縫線很工整,像一行一行工整的詩,但我想不起她的臉,也想不起那首詩的內容。

或許,所謂的「氣」,不過是某種更巨大的、關於遺忘的定律。我收劍入鞘,發出喀鏘一聲,短促而絕對。鄰桌的兩名江湖人停止了交談,朝我望來。我沒有理會,只是把那杯早已冷掉的茶,一飲而盡。」

重新表達

我想請 AI 協助我將一些艱澀的技術規格轉成一般使用者好理解的內容,以下是提示詞:

請將技術規格改寫成一般使用者容易理解的描述:

範例 1:
技術規格:8GB RAM, 256GB SSD
使用者描述:記憶體充足不卡頓,檔案存取快如閃電。

範例 2:
技術規格:IP68 防水等級
使用者描述:可在 2 公尺深水中正常使用 30 分鐘。

現在請處理:
技術規格:5000mAh 電池,18W 快充

這次我們改用 ChatGPT 5,他的回應如下:

「大容量電池,一整天使用不擔心沒電;搭配快充,充電幾十分鐘就能補回好幾小時的電力。」

數據分析

接下來這個是我蠻常用的,因為有時候會看 GA 報表想了解使用者瀏覽我網站的行為,以及後續可以優化的建議,所以可以提供 AI 一些範例,並請協助我進行分析,提示詞如下:

請將數據分析結果轉為商業建議:

範例 1:
數據:網站跳出率 60%,平均停留時間 2 分鐘。
建議:優化首頁設計,增加引導式內容,以提升用戶參與度。

範例 2:
數據:iOS 用戶轉換率 4.2%,Android 用戶轉換率 2.8%。
建議:針對 Android 用戶優化介面體驗,重點改善付款流程。

現在請分析:
數據:客服電話量增加 35%,顧客滿意度下降至 3.2/5 分。

ChatGPT 5 回應的建議為:

「強化客服資源配置,增加即時回覆管道(如線上客服或智能客服),並針對常見問題建立清晰的自助解決方案,以降低等待時間與客服壓力,同時提升顧客體驗。」

如何讓 Few-shot 更上一層樓

當我們熟悉前述的基礎應用後,可以嘗試結合更進階的技巧,讓你能更好控制 AI 的輸出

結合 CoT 思考鏈

我們在第一篇:什麼是提示詞 Prompt?為什麼他很重要?有簡單提到思考鏈 (CoT) 這個名詞,CoT 可以引導 AI 一步步思考,以便處理更複雜的邏輯推理。

所以我們可以將範例跟 CoT 結合,不僅僅是給出答案,更要示範如何一步步思考,以下是修改後的 Few-shot 範例:

範例 (深度分析):
趨勢:遠距辦公 / 在家工作的需求增加
分析:疫情改變工作模式 → 企業數位轉型加速 → 雲端服務需求激增 → 資安重要性提升 → 新的管理挑戰出現

將錯誤範例也當成參考的一環

有時候除了提供優質範例外,也可以提供錯誤或避免這樣做的範例,告訴 AI 這些不要做

好的範例:「您好,關於專案進度,目前已完成 60%,預計下週五交付。」
避免這樣寫:「嗨!東西做得差不多了,大概下禮拜給你吧 ~」

小結

Few-shot 提示詞是讓我們對 AI 從下達指令變成引導的一個重要轉變,我們透過 Few-shot 將溝通的重點從抽象的文字描述,變成具體的範例展示,而我們使用 Few-shot 也是為了提高 AI 輸出的品質和一致性,並降低溝通的成本,所以我覺得學習或了解 Few-shot 的使用方式,是很有必要性的。

也希望這篇文章可以幫助到各位,有任何問題都歡迎留言告訴我。


上一篇
Day3. 如何避免模糊指令,並在精準跟發散之間找到平衡點
下一篇
Day5. Zero-shot vs Few-shot vs Many-shot 的比較
系列文
可愛又迷人的提示詞工程 Prompt Engineering6
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言